﻿using System;
namespace Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg {
    
    
    public partial class OmandTypeV3 : global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IOmandTypeV3 {
        
        private decimal @__suurus;
        
        private string @__omandiliik;
        
        private string @__roll;
        
        private System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IKapitaliOmanikTypeV3> @__omanikud = new System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IKapitaliOmanikTypeV3>();
        
        private global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IHyLiikmesusTypeV3 @__liikmesus;
        
        private string @__kontakt;
        
        public OmandTypeV3() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public OmandTypeV3(decimal @suurus, string @omandiliik, string @roll, System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IKapitaliOmanikTypeV3> @omanikud, global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IHyLiikmesusTypeV3 @liikmesus, string @kontakt) {
            this.@__suurus = @suurus;
            this.@__omandiliik = @omandiliik;
            this.@__roll = @roll;
            this.@__omanikud = @omanikud;
            this.@__liikmesus = @liikmesus;
            this.@__kontakt = @kontakt;
        }
        
        /// <summary>
        /// Required parameters
        /// </summary>
        public OmandTypeV3(decimal @suurus, string @omandiliik, string @roll) {
            this.@__suurus = @suurus;
            this.@__omandiliik = @omandiliik;
            this.@__roll = @roll;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected OmandTypeV3(IOmandTypeV3 @omandTypeV3) {
            this.@__suurus = @omandTypeV3.Suurus;
            this.@__omandiliik = @omandTypeV3.Omandiliik;
            this.@__roll = @omandTypeV3.Roll;
            this.@__omanikud = @omandTypeV3.Omanikud;
            this.@__liikmesus = @omandTypeV3.Liikmesus;
            this.@__kontakt = @omandTypeV3.Kontakt;
        }
        
        public virtual decimal Suurus {
            get {
                return this.@__suurus;
            }
            set {
                this.@__suurus = value;
            }
        }
        
        public virtual string Omandiliik {
            get {
                return this.@__omandiliik;
            }
            set {
                this.@__omandiliik = value;
            }
        }
        
        public virtual string Roll {
            get {
                return this.@__roll;
            }
            set {
                this.@__roll = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IKapitaliOmanikTypeV3> Omanikud {
            get {
                return this.@__omanikud;
            }
            set {
                this.@__omanikud = value;
            }
        }
        
        public virtual global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IHyLiikmesusTypeV3 Liikmesus {
            get {
                return this.@__liikmesus;
            }
            set {
                this.@__liikmesus = value;
            }
        }
        
        public virtual string Kontakt {
            get {
                return this.@__kontakt;
            }
            set {
                this.@__kontakt = value;
            }
        }
    }
}
